# 代码所有：cxw
# 开发时间：2021/11/21 14:54
import matplotlib.pyplot as plt

# list1 = [1, 2, 3, 4, 5]  #x轴的值
# list2 = [1, 4, 9, 16, 25] #y轴的值
list1 = list(range(1, 1001))
list2 = list(x ** 2 for x in list1)  # 列表生成式
plt.scatter(list1, list2, s=40, edgecolors="none", c=list2, cmap=plt.cm.Reds)
'''scatter()绘制单个点，传递一对x和y坐标,s指定点的大小 
edgecolors="red"指定线条的轮廓颜色 
c指定线条的颜色（可使用rgb自定义颜色,指定为一个元组(),0~1之间分别表示红 绿 蓝）
cmap=plt.cm.color+s 内置转换函数 可以指定是否使用颜色映射 例如cmap=plt.cm.Reds 红色渐变 小值红色较浅，大值红色较强
'''
plt.title("Squares Number", fontsize=24)
plt.xlabel("value", fontsize=14)
plt.ylabel("Squares of Value", fontsize=14)
# 设置刻度标记的大小
plt.tick_params(axis="both", which="major", labelsize=14)
'''
axis的值为x y 和both ,分别代表x y 轴以及同时设置，默认值为both
which的值为 major minor both 分别代表主刻度线，次刻度线以及同时设置，默认值为major
'''
# 设置坐标的取值范围
plt.axis([0, 1100, 0, 1100000])  # 将x轴的取值范围设为0~1100,y轴设置为0~1100000
# plt.show()  显示图表
plt.savefig("squares_plot.png", bbox_inches="tight")
# 自动保存图表，第一个实参表示以什么文件名保存图表,第二个实参是将图标其他空白区域剪掉，如果要保存其他区域可以省略
